22302
8192
닫은. 이 질문은 Stack Overflow 지침을 충족하지 않습니다. 현재 답변을 받고 있지 않습니다.
이 질문을 개선하고 싶으십니까? Stack Overflow의 주제에 맞게 질문을 업데이트하세요.
4 년 전에 문을 닫았습니다.
이 질문 개선
사용자가 선택한 여러 텍스트 파일을 처리하는 Shiny 앱을 만들고 있습니다.
출력은 수백만 개의 행과 수십 개의 열이있는 거대한 데이터 프레임입니다.
이제 사용자가 대화 형으로 행을 필터링하고, 열을 선택하고, 열을 요약 할 수 있도록하는 데 관심이 있습니다 (평균, sd, 최대, 최소, 합계 등과 같은 함수 목록에서 선택). 그 결과 사용자 선택 별 데이터를 요약하는 더 작은 데이터 프레임이됩니다. 기본적으로 dplyr 라이브러리의 기본 기능을 구현하는 GUI를 만들어야합니다.
일반적으로 GUI 요소를 수동으로 생성하고 여러 dplyr 명령을 사용하여 서버 기능에 공급하는 방법을 알고 있습니다. 이것은 꽤 표준적인 기능 (데이터 프레임을 필터링하고 요약하는 GUI)처럼 보이므로 처음부터 구축을 시작하기 전에있는 그대로 또는 시작점으로 사용할 수있는 "기성품"이 있는지 궁금합니다. . 
rpivotTable이 당신이 추구하는 바가 아니라고 말한 것을 알고 있지만, 무거운 작업을 수행하도록 구성 할 수 있다고 생각합니다.
여기에 예제가 있습니다 (조작에 rpivotTable 사용, data.frame 표시에 DT 사용, DOM에서 innerHTML 구문 분석에 rvest 사용, 클라이언트 측에서 테이블 개체를 전달하는 데 더 나은 데이터 형식이있을 수 있지만 이것은 개념 증명입니다) ) :
ui.R
도서관 (반짝이)
도서관 (DT)
라이브러리 (rpivotTable)
FullPage <-fluidPage (
DT :: dataTableOutput ( 'aSummaryTable'),
rpivotTableOutput ( 'RESULTS')
)
전체 페이지
서버 .R :
도서관 (반짝이)
라이브러리 (rpivotTable)
도서관 (DT)
도서관 (rvest)
function (input, output, session) {
# 샘플 데이터 만들기
qbdata <-반응 ({
expand.grid (LETTERS, 1 : 3)
})
# HTML을 정리하고 반응 형으로 저장
summarydf <-eventReactive (input $ myData, {
input $ myData %> %
read_html %> %
html_table (fill = TRUE) %> %
# rpivotTable에 두 개의 테이블이있는 것으로 나타났습니다.
. [[2]]
})
# df를 DT :: datatable로 표시
output $ aSummaryTable <-DT :: renderDataTable ({
datatable (summarydf (), 행 이름 = FALSE)
})
# 구성이 새로 고쳐질 때마다 테이블의 내용으로 콜백
output $ RESULTS <-renderRpivotTable ({
rpivotTable (
qbdata (),
onRefresh =
htmlwidgets :: JS ( "function (config) {
Shiny.onInputChange ( 'myData', document.getElementById ( 'RESULTS'). innerHTML);
} ")
)
})
}
|
찾고있는 답변이 아닙니까? r dplyr shiny 태그가 지정된 다른 질문을 찾아 보거나 직접 질문하십시오.